<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>23 $WATCH</title>
    <link rel="stylesheet" href="../../lib/bootstrap3/css/bootstrap.min.css">
    <link rel="stylesheet" href="../../lib/bootstrap3/css/dashboard.css">
    <script src="../../lib/angularjs/angular.js"></script>
</head>
<body>
<div class="well">
    <h3>$watch函数本身接受两个必要参数和一个可选的参数</h3>
    <div class="list-group">
        <a href="#" class="list-group-item ">
            <h4 class="list-group-item-heading">参数1：watchExpression</h4>
            <p class="list-group-item-text">
                    watchExpression可以是一个作用域对象的属性，或者是一个函数。在$digest循环中的每
                个$digest调用都会涉及它。
                    如果watchExpression是一个字符串， Angular会在$scope上下文中对它求值。如果它是一个
                函数，那么Angular会认为它会返回应该被监控的值。
            </p>
        </a>
        <a href="#" class="list-group-item ">
            <h4 class="list-group-item-heading">参数2：listener/callback</h4>
            <p class="list-group-item-text">
                作为回调的监听器函数，它只会在watchExpression的当前值与先前值不相等（除了首次运
                行初始化期间）时调用。
            </p>
        </a>
        <a href="#" class="list-group-item ">
            <h4 class="list-group-item-heading">参数3：objectEquality【可选】</h4>
            <p class="list-group-item-text">
                objectEquality是一个进行比较的布尔值，用来告诉Angular是否检查严格相等
            </p>
        </a>
    </div>
</div>
<div class="well">
    <xmp>
angular.module("myApp")
.controller("MyController", ['$scope', function($scope) {
$scope.$watch('full_name', function(newVal, oldVal, scope) {
// newVal表示在这里可以用的full_name新值
// 而oldVal表示full_name的旧值
});
}]);
    </xmp>
</div>
</body>
</html>